Area and Time Efficient Modular Multiplication of Large Integers
نویسندگان
چکیده
A new modular multiplication algorithm and its corresponding architecture is presented. It is optimised with respect to hardware complexity and latency. Based on the data flow of the well known interleaved modular multiplication the product of two n-bit-integers X and Y modulo M is computed by n iterations of a simple loop. The loop consists of one single carry save addition, a comparison of constant complexity, and a table lookup, where the table contains 6 precomputed values and two constants. By this construction the arithmetical complexity of the modular multiplication is reduced to n additions without carry propagation in total which leads to a speedup of at least two in comparison to all methods previously known. The paper consists of a first algorithm A2 implementing the new idea of combining carry save addition and constant time comparison. A2 is not optimal with respect to area and time. Its correctness is proven. By use of a small amount of precomputing the loop of A2 can be modified such that the effort within the loop is minimised. This leads to the algorithm A3. Its verification concludes the paper.
منابع مشابه
Simultaneous Modular Reduction and Kronecker Substitution for Small Finite Fields
We present algorithms to perform modular polynomial multiplication or modular dot product efficiently in a single machine word. We pack polynomials into integers and perform several modular operations with machine integer or floating point arithmetic. The modular polynomials are converted into integers using Kronecker substitution (evaluation at a sufficiently large integer). With some control ...
متن کاملNew Modular Multiplication Algorithms for Fast Modular Exponentiation
A modular exponentiation is one of the most important operations in public-key cryptography. However, it takes much time because the modular exponen-tiation deals with very large operands as 512-bit integers. The modular exponentiation is composed of repetition of modular multiplications. Therefore, we can reduce the execution time of it by reducing the execution time of each modular multiplica...
متن کاملMultiplication Algorithm of Large Integers using Finite Discrete Convolution
Several existing algorithms for multiplication of large integers are discussed, and a highly efficient algorithm based on finite discrete convolution is introduced. In the new algorithm, large integers are split into many digits and stored in arrays, every item in array stands for every digit of large integer. In this way, the integer can be any large; the only limit is the memory of computer. ...
متن کاملAn efficient VLSI architecture for RSA public-key cryptosystem
In this paper, a new efficient VLSI archtecture to compute RSA public-key cryptosystem is proposed. The modified H-algorithm is applied to fmd the modular exponentiation. By this modified Halgorithm, the modular multiplication steps reduced about 5dl8. For the modular multiplication the L-algorithm (LSB first) is used. In the architecture of the modular multiplication the iteration times are on...
متن کاملAchieving NTRU with Montgomery Multiplication
In this paper, we propose a new unified architecture that utilizes the Montgomery Multiplication algorithm to perform a modular multiplication for both integers and binary polynomials and NTRU’s polynomial multiplications. The unified design is capable of supporting a majority of public-key cryptosystems such as NTRU, RSA, Diffie-Hellman key exchange, and Elliptic Curve schemes, among others. F...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003